Skip to main content
Feedback

<mdm:businessRule> functions

In the <mdm:businessRule> element, an <mdm:function> element’s type attribute corresponds to the function type selection in the Functions list in the initial Add a Function dialog in .

Functions of the following types are valid:

The following table shows the correspondence between the function type selections in the Functions list and the type attribute’s valid values and shows an example of the <mdm:function> element structure for each type. The child <mdm:inputs> element contains an <mdm:input> element representing each input for that type.

  • Each <mdm:input> element’s name attribute value is that of a field in the dialog specific to that type that opens upon submitting the initial Add a Function dialog in .

  • Each <mdm:input> element’s uniqueId attribute value corresponds to the uniqueId attribute value for an <mdm:field> element representing a field in the model.

Add a Function dialog Functions type selection<mdm:function> type attribute value<mdm:function> example and usage notes
String functions
Left Character TrimLeftTrim<mdm:function type="LeftTrim"> <mdm:inputs> <mdm:input name="Original String" uniqueId="NAME" default=""/> <mdm:input name="Fix to Length" uniqueId="EMAIL" default=""/> </mdm:inputs> </mdm:function>
Right Character TrimRightTrim<mdm:function type="RightTrim"> <mdm:inputs> <mdm:input name="Original String" uniqueId="NAME" default=""/> <mdm:input name="Fix to Length" uniqueId="EMAIL" default=""/> </mdm:inputs> </mdm:function>
Whitespace TrimWhiteSpaceTrim<mdm:function type="WhiteSpaceTrim"> <mdm:inputs> <mdm:input name="Original String" uniqueId="NAME" default=""/> </mdm:inputs> </mdm:function>
String AppendStringAppend<mdm:function type="StringAppend"> <mdm:inputs> <mdm:input name="Original String" uniqueId="NAME" default=""/> <mdm:input name="Fix to Length" uniqueId="" default="4"/> <mdm:input name="Char to Append" uniqueId="" default="a"/> </mdm:inputs> </mdm:function>
String PrependStringPrepend<mdm:function type="StringPrepend"> <mdm:inputs> <mdm:input name="Original String" uniqueId="NAME" default=""/> <mdm:input name="Fix to Length" uniqueId="" default="4"/> <mdm:input name="Char to Prepend" uniqueId="" default="p"/> </mdm:inputs> </mdm:function>
String ConcatStringConcat<mdm:function type="StringConcat" delimiter="/" fixToLength="" > <mdm:inputs> <mdm:input name="Country Code" default="" uniqueId="COUNTRY_CODE"/> <mdm:input name="Area Code" default="" uniqueId="AREA_CODE"/> <mdm:input name="Local Number" default="" uniqueId="LOCAL_NUMBER"/> </mdm:inputs> </mdm:function>
In addition to the type attribute, an <mdm:function> element of type StringConcat has the following additional attributes. Each of these attributes corresponds to a field in the Add a Function dialog that opens upon submitting the initial Add a Function dialog in Boomi DataHub. This table shows the correspondence between the attributes and the dialog fields:AttributeCorresponds toValid valuesdelimiterDelimiterAny stringfixToLengthFix to LengthAny integer.
Each <mdm:input> element in <mdm:function> of type StringConcat is user-defined. This table shows the correspondence between an <mdm:input>’s attributes and fields in Add a Function dialogs in Boomi DataHub:AttributeCorresponds toValid valuesnameInput name in the Inputs section of the Add a Function dialog that opens upon submitting the initial Add a Function dialog. This name is specified in the Name field in the New Input dialog that opens upon clicking + in the Inputs section.Any stringdefaultField in the tertiary Add a Function dialog labeled with the name attribute valueAny stringuniqueIdUnlabeled field in the tertiary Add a Function dialog adjacent to the field labeled with the name attribute value`` uniqueId attributes
String ReplaceStringReplace<mdm:function type="StringReplace"> <mdm:inputs> <mdm:input name="Original String" uniqueId="NAME" default=""/> <mdm:input name="String to Search" uniqueId="" default="name"/> <mdm:input name="String to Replace" uniqueId="" default="LastName"/> </mdm:inputs> </mdm:function>
String RemoveStringRemove<mdm:function type="StringRemove"> <mdm:inputs> <mdm:input name="Original String" uniqueId="NAME" default=""/> <mdm:input name="String to Remove" uniqueId="" default="fed"/> </mdm:inputs> </mdm:function>
String To LowerStringToLower<mdm:function type="StringToLower"> <mdm:inputs> <mdm:input name="Original String" uniqueId="NAME" default="value"/> </mdm:inputs> </mdm:function>
String to UpperStringToUpper<mdm:function type="StringToUpper"> <mdm:inputs> <mdm:input name="Original String" uniqueId="NAME" default=""/> </mdm:inputs> </mdm:function>
String SplitStringSplit<mdm:function type="StringSplit" splitBy="Delimiter" value="-" > <mdm:inputs> <mdm:input name="Original String" default="" uniqueId="PHONE"/> </mdm:inputs> <mdm:outputs> <mdm:output name="Country Code"/> <mdm:output name="Area Code"/> <mdm:output name="Local Number"/> </mdm:outputs> </mdm:function>
In addition to the type attribute, an <mdm:function> element of type StringSplit has the following additional attributes. Each of these attributes corresponds to a field in the Add a Function dialog that opens upon submitting the initial Add a Function dialog in Boomi DataHub. This table shows the correspondence between the attributes and the dialog fields:AttributeCorresponds toValid valuessplitBySplit ByDelimiter, FixedLengthdelimiterValueAny string.
This attribute is present only if the splitBy attribute value is Delimiter.fixToLengthValueAny integer.
This attribute is present only if the splitBy attribute value is FixedLength.
In addition to its child <mdm:inputs> element, an <mdm:function> element of type StringSplit has a child :<mdm:outputs> element. <mdm:outputs> contains an <mdm:output> element representing each of the function’s outputs. <mdm:output> has the following attribute:AttributeCorresponds toValid valuesnameOutput name in the Outputs section of the Add a Function dialog that opens upon submitting the initial Add a Function dialog. This name is specified in the Name field in the New Output dialog that opens upon clicking + in the Outputs section.Any string
Numeric functions
Math Absolute ValueMathAbsoluteValue<mdm:function type="MathAbsoluteValue"> <mdm:inputs> <mdm:input name="Original String" uniqueId="PHONE" default=""/> </mdm:inputs> </mdm:function>
Math AddMathAdd<mdm:function type="MathAdd"> <mdm:inputs> <mdm:input name="Value" uniqueId="" default=""/> <mdm:input name="Value to Add" uniqueId="" default=""/> </mdm:inputs> </mdm:function>
Math SubtractMathSubtract<mdm:function type="MathSubtract"> <mdm:inputs> <mdm:input name="Value" uniqueId="" default=""/> <mdm:input name="Value to Subtract" uniqueId="" default=""/> </mdm:inputs> </mdm:function>
Math MultiplyMathMultiply<mdm:function type="MathMultiply"> <mdm:inputs> <mdm:input name="Value" uniqueId="" default=""/> <mdm:input name="Value to Multiply" uniqueId="" default=""/> </mdm:inputs> </mdm:function>
Math DivideMathDivide<mdm:function type="MathDivide"> <mdm:inputs> <mdm:input name="Value" uniqueId="" default=""/> <mdm:input name="Value to Divide" uniqueId="" default=""/> </mdm:inputs> </mdm:function>
Math (Ceil) CeilingMathCeil<mdm:function type="MathCeil"> <mdm:inputs> <mdm:input name="Value" uniqueId="" default=""/> </mdm:inputs> </mdm:function>
Math FloorMathFloor<mdm:function type="MathFloor"> <mdm:inputs> <mdm:input name="Value" uniqueId="" default=""/> </mdm:inputs> </mdm:function>
Math Set PrecisionMathSetPrecision<mdm:function type="MathSetPrecision"> <mdm:inputs> <mdm:input name="Value" uniqueId="" default=""/> <mdm:input name="Number of Precision" uniqueId="" default=""/> </mdm:inputs> </mdm:function>
Number FormatNumberFormat<mdm:function type="NumberFormat"> <mdm:inputs> <mdm:input name="Number String" uniqueId="PHONE" default=""/> <mdm:input name="Input Mask" uniqueId="" default="***"/> <mdm:input name="Output Mask" uniqueId="" default="****-**"/> </mdm:inputs> </mdm:function>
For information about number formatting, see the topic Number Data Type.
Running TotalRunningTotal<mdm:function type="RunningTotal" keyName="identit" Fix to Length="" batchSize="" > <mdm:inputs> <mdm:input name="Value to Sum" uniqueId="" default=""/> </mdm:inputs> </mdm:function>
SumSum<mdm:function type="Sum"> <mdm:inputs> <mdm:input name="Value to Sum" uniqueId="" default=""/> <mdm:input name="Reset Value" uniqueId="" default=""/> </mdm:inputs> </mdm:function>
CountCount<mdm:function type="Count"> <mdm:inputs> <mdm:input name="Field to Count" uniqueId="" default=""/> <mdm:input name="Reset Value" uniqueId="" default=""/> </mdm:inputs> </mdm:function>
Line Item IncrementLineItemIncrement<mdm:function type="LineItemIncrement"> <mdm:inputs> <mdm:input name="Increment Basis" uniqueId="" default=""/> <mdm:input name="Reset Value" uniqueId="" default=""/> </mdm:inputs> </mdm:function>
Sequential ValueSequentialValue<mdm:function type="SequentialValue" keyName="identity" Fix to Length="10" batchSize="1" > <mdm:inputs> <mdm:input name="Increment Basis" uniqueId="PHONE" default=""/> </mdm:inputs> </mdm:function>
In addition to the type attribute, an <mdm:function> element of type SequentialValue has the following additional attributes, each of which corresponds to a field in the Sequential Value dialog:AttributeCorresponds toValid valueskeyNameKey NameAny arbitrary, unique namefixToLengthFix to LengthAny integerbatchSizeBatch SizeAny integer
Date functions
Date FormatDateFormat<mdm:function type="DateFormat" > <mdm:inputs> <mdm:input name="Date String" uniqueId="" default=""/> <mdm:input name="Input Mask" uniqueId="" default=""/> <mdm:input name="Output Mask" uniqueId="" default=""/> </mdm:inputs> </mdm:function>
For information about date formatting, see the topic Date/Time data Type.
Get Current DateCurrentDate<mdm:function type="CurrentDate"> </mdm:function>
This function type does not have a child <mdm:inputs> element.